from sitepal.sitetheme.renderers     import ThemeRenderer
from sitepal.sitetheme.siteapp.theme import theme_block
from sitepal.sitetheme.siteapp.theme import theme_context
from sitepal.sitetheme.siteapp.theme import theme_dict
from sitepal.sitetheme.siteapp.theme import theme_link
from sitepal.sitetheme.siteapp.theme import theme_list
from sitepal.sitetheme.siteapp.theme import theme_misc
from sitepal.sitetheme.siteapp.theme import theme_page
from sitepal.sitetheme.siteapp.theme import theme_site
from sitepal.sitetheme.siteapp.theme import theme_table
from sitepal.sitetheme.siteapp.theme import theme_template

class BaseThemeRenderer(ThemeRenderer):

    # implemented in sitepal.sitetheme.themes.all.default.theme_block
    render_block  = theme_block.render_block
    render_region = theme_block.render_region

    # implemented in sitepal.sitetheme.themes.all.default.theme_context
    common_context = theme_context.common_context
    user_context   = theme_context.user_context

    # implemented in sitepal.sitetheme.themes.all.default.theme_dict
    render_dict       = theme_dict.render_dict
    render_dict_key   = theme_dict.render_dict_key
    render_dict_value = theme_dict.render_dict_value

    # implemented in sitepal.sitetheme.themes.all.default.theme_link
    link_attributes     = theme_link.link_attributes
    render_link         = theme_link.render_link
    render_link_queries = theme_link.render_link_queries
    render_links        = theme_link.render_links

    # implemented in sitepal.sitetheme.themes.all.default.theme_list
    render_list      = theme_list.render_list
    render_list_item = theme_list.render_list_item

    # implemented in sitepal.sitetheme.themes.all.default.theme_misc
    add_class        = theme_misc.add_class
    image_attributes = theme_misc.image_attributes
    render_image     = theme_misc.render_image
    render_tag       = theme_misc.render_tag

    # implemented in sitepal.sitetheme.themes.all.default.theme_page
    render_body = theme_page.render_body
    render_html = theme_page.render_html
    render_page = theme_page.render_page

    # implemented in sitepal.sitetheme.themes.all.default.theme_site
    site_charset      = theme_site.site_charset
    site_content_type = theme_site.site_content_type
    site_language     = theme_site.site_language
    site_language_dir = theme_site.site_language_dir
    site_languages    = theme_site.site_languages
    site_slogan       = theme_site.site_slogan
    site_theme_name   = theme_site.site_theme_name
    site_name         = theme_site.site_name

    # implemented in sitepal.sitetheme.themes.all.default.theme_table
    format_table_header         = theme_table.format_table_header
    format_table_header_active  = theme_table.format_table_header_active
    format_table_header_passive = theme_table.format_table_header_passive
    format_table_header_simple  = theme_table.format_table_header_simple
    table_attributes            = theme_table.table_attributes
    table_body_attributes       = theme_table.table_body_attributes
    table_cell_attributes       = theme_table.table_cell_attributes
    table_common_attributes     = theme_table.table_common_attributes
    table_footer_attributes     = theme_table.table_footer_attributes
    table_header_attributes     = theme_table.table_header_attributes
    table_row_attributes        = theme_table.table_row_attributes
    render_table                = theme_table.render_table
    render_table_bodies         = theme_table.render_table_bodies
    render_table_body           = theme_table.render_table_body
    render_table_cell           = theme_table.render_table_cell
    render_table_footer         = theme_table.render_table_footer
    render_table_header         = theme_table.render_table_header
    render_table_row            = theme_table.render_table_row
    render_table_rows           = theme_table.render_table_rows

    # implemented in sitepal.sitetheme.themes.all.default.theme_template
    render_template        = theme_template.render_template
    render_template_source = theme_template.render_template_source

